package com.zuo.entity;

import java.util.Date;
import java.util.Objects;

/**
 * @Author 白白旧维
 * @Date 2022/2/28 18:35
 */
public class Staff {

    private int sid;
    private Pos pos;
    private Department department;
    private String sname;
    private String scard;
    private int sgender;
    private String seducation;
    private String semail;
    private String sphone;
    private String stel;
    private String spolitic;
    private String sqq;
    private String saddress;
    private String szipcode;
    private String sbirth;
    private String snationality;
    private String smajor;
    private String shobby;
    private String sremark;
    private Date screateTime;
    private String createTime;

    public Staff() {
        this.pos = new Pos();
        this.department = new Department();
    }

    public Staff(int sid, Pos pos, Department department, String sname, String scard, int sgender, String seducation, String semail, String sphone, String stel, String spolitic, String sqq, String saddress, String szipcode, String sbirth, String snationality, String smajor, String shobby, String sremark, Date screateTime) {
        this.sid = sid;
        this.pos = pos;
        this.department = department;
        this.sname = sname;
        this.scard = scard;
        this.sgender = sgender;
        this.seducation = seducation;
        this.semail = semail;
        this.sphone = sphone;
        this.stel = stel;
        this.spolitic = spolitic;
        this.sqq = sqq;
        this.saddress = saddress;
        this.szipcode = szipcode;
        this.sbirth = sbirth;
        this.snationality = snationality;
        this.smajor = smajor;
        this.shobby = shobby;
        this.sremark = sremark;
        this.screateTime = screateTime;
    }


    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public Date getScreateTime() {
        return screateTime;
    }

    public void setScreateTime(Date screateTime) {
        this.screateTime = screateTime;
    }

    public int getSid() {
        return sid;
    }

    public void setSid(int sid) {
        this.sid = sid;
    }

    public Pos getPos() {
        return pos;
    }

    public void setPos(Pos pos) {
        this.pos = pos;
    }

    public Department getDepartment() {
        return department;
    }

    public void setDepartment(Department department) {
        this.department = department;
    }

    public String getSname() {
        return sname;
    }

    public void setSname(String sname) {
        this.sname = sname;
    }

    public String getScard() {
        return scard;
    }

    public void setScard(String scard) {
        this.scard = scard;
    }

    public int getSgender() {
        return sgender;
    }

    public void setSgender(int sgender) {
        this.sgender = sgender;
    }

    public String getSeducation() {
        return seducation;
    }

    public void setSeducation(String seducation) {
        this.seducation = seducation;
    }

    public String getSemail() {
        return semail;
    }

    public void setSemail(String semail) {
        this.semail = semail;
    }

    public String getSphone() {
        return sphone;
    }

    public void setSphone(String sphone) {
        this.sphone = sphone;
    }

    public String getStel() {
        return stel;
    }

    public void setStel(String stel) {
        this.stel = stel;
    }

    public String getSpolitic() {
        return spolitic;
    }

    public void setSpolitic(String spolitic) {
        this.spolitic = spolitic;
    }

    public String getSqq() {
        return sqq;
    }

    public void setSqq(String sqq) {
        this.sqq = sqq;
    }

    public String getSaddress() {
        return saddress;
    }

    public void setSaddress(String saddress) {
        this.saddress = saddress;
    }

    public String getSzipcode() {
        return szipcode;
    }

    public void setSzipcode(String szipcode) {
        this.szipcode = szipcode;
    }

    public String getSbirth() {
        return sbirth;
    }

    public void setSbirth(String sbirth) {
        this.sbirth = sbirth;
    }

    public String getSnationality() {
        return snationality;
    }

    public void setSnationality(String snationality) {
        this.snationality = snationality;
    }

    public String getSmajor() {
        return smajor;
    }

    public void setSmajor(String smajor) {
        this.smajor = smajor;
    }

    public String getShobby() {
        return shobby;
    }

    public void setShobby(String shobby) {
        this.shobby = shobby;
    }

    public String getSremark() {
        return sremark;
    }

    public void setSremark(String sremark) {
        this.sremark = sremark;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        Staff staff = (Staff) o;
        return sid == staff.sid &&
                Objects.equals(pos, staff.pos) &&
                Objects.equals(department, staff.department) &&
                Objects.equals(sname, staff.sname) &&
                Objects.equals(scard, staff.scard) &&
                Objects.equals(sgender, staff.sgender) &&
                Objects.equals(seducation, staff.seducation) &&
                Objects.equals(semail, staff.semail) &&
                Objects.equals(sphone, staff.sphone) &&
                Objects.equals(stel, staff.stel) &&
                Objects.equals(spolitic, staff.spolitic) &&
                Objects.equals(sqq, staff.sqq) &&
                Objects.equals(saddress, staff.saddress) &&
                Objects.equals(szipcode, staff.szipcode) &&
                Objects.equals(sbirth, staff.sbirth) &&
                Objects.equals(snationality, staff.snationality) &&
                Objects.equals(smajor, staff.smajor) &&
                Objects.equals(shobby, staff.shobby) &&
                Objects.equals(sremark, staff.sremark) &&
                Objects.equals(screateTime, staff.screateTime);
    }

    @Override
    public int hashCode() {
        return Objects.hash(sid, pos, department, sname, scard, sgender, seducation, semail, sphone, stel, spolitic, sqq, saddress, szipcode, sbirth, snationality, smajor, shobby, sremark, screateTime);
    }

    @Override
    public String toString() {
        return "Staff{" +
                "sid=" + sid +
                ", position=" + pos +
                ", department=" + department +
                ", sname='" + sname + '\'' +
                ", scard='" + scard + '\'' +
                ", sgender='" + sgender + '\'' +
                ", seducation='" + seducation + '\'' +
                ", semail='" + semail + '\'' +
                ", sphone='" + sphone + '\'' +
                ", stel='" + stel + '\'' +
                ", spolitic='" + spolitic + '\'' +
                ", sqq='" + sqq + '\'' +
                ", saddress='" + saddress + '\'' +
                ", szipcode='" + szipcode + '\'' +
                ", sbirth=" + sbirth +
                ", snationality='" + snationality + '\'' +
                ", smajor='" + smajor + '\'' +
                ", shobby='" + shobby + '\'' +
                ", sremark='" + sremark + '\'' +
                ", screateTime=" + screateTime +
                '}';
    }
}
